﻿using System;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Ink;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;
using System.Collections.Generic;

namespace Payton.WP7.Common.Model
{
    public abstract class SNSProviderFactory
    {
       static SNSProviderFactory()
        {
        }

        public static SNSProviderFactory GetFactory(SNSProviderType type)
        {
            switch (type)
            {
                case SNSProviderType.Sina:
                    return SinaSNSProviderFactory.Instance;
                case SNSProviderType.Tencent:
                    return TencentSNSProviderFactory.Instance;
                case SNSProviderType.RenRen:
                    return RenRenSNSProviderFactory.Instance;
                case SNSProviderType.Douban:
                    return DouBanSNSProviderFactory.Instance;
                case SNSProviderType.Sohu:
                default:
                    return null;
                    //throw new NotSupportedException("Unsupported service provider");
            }
        }

        public abstract SNSProvider GetProvider();
    }
}
